#ifndef PERSONNE_H
#define PERSONNE_H

#include<QVariant>
#include"globalheader.h"

    class Personne
    {
		protected:
			std::string nom_;
			std::string prenom_;
			std::string adressePostale_;
			std::string adresseElectronique_;

            QString qnom;
            QString qprenom;
            QString qadrp;
            QString qadre;
			
		public:
            Personne(const std::string& nom="", const std::string& prenom="", const std::string& adressePostale="", const std::string& adresseElectronique="");
            Personne(const Personne &pers);
            ~Personne();
			std::string getNom() const;
			void setNom(const std::string& nom);
			std::string getPrenom() const;
            void setPrenom(const std::string& prenom);
			std::string getAdrPost() const;
			std::string getAdrEl() const;
			void setAdrPost(const std::string& adrPostale);
			void setAdrEl(const std::string& adrElect);

            static void initPersonneSystem ();

         private:

            friend QDataStream & operator <<(QDataStream & out, const Personne &);
            friend QDataStream & operator >>(QDataStream & in, Personne &);
	};
	
    Q_DECLARE_METATYPE(Personne)
    QDataStream & operator << (QDataStream & out, const Personne & Valeur);
    QDataStream & operator >> (QDataStream & in, Personne & Valeur);

	std::ostream& operator<<(std::ostream& os,const Personne& p);


#endif
